package com.qumitech.visualnovel.datasource.console;

import com.qumitech.visualnovel.model.dao.console.ActiveRemainUserCount;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ActiveRemainUserCountMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(ActiveRemainUserCount record);

    int insertSelective(ActiveRemainUserCount record);

    ActiveRemainUserCount selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(ActiveRemainUserCount record);

    int updateByPrimaryKey(ActiveRemainUserCount record);

    List<ActiveRemainUserCount> getActiveRemainAccountList(@Param("startTime") String startTime,
                                               @Param("endTime") String endTime,
                                               @Param("appName") String appName,
                                               @Param("channel") String channel,
                                               @Param("appVersion") String appVersion,
                                               @Param("system") String system,
                                               @Param("gender") Integer gender);

    List<ActiveRemainUserCount> getActiveRemainAccountListExceptRedirect(@Param("startTime") String startTime,
                                                           @Param("endTime") String endTime,
                                                           @Param("appName") String appName,
                                                           @Param("channel") String channel,
                                                           @Param("appVersion") String appVersion,
                                                           @Param("system") String system,
                                                           @Param("gender") Integer gender);

    List<ActiveRemainUserCount> getActiveRemainAccountListRedirect(@Param("startTime") String startTime,
                                                           @Param("endTime") String endTime,
                                                           @Param("appName") String appName,
                                                           @Param("channel") String channel,
                                                           @Param("appVersion") String appVersion,
                                                           @Param("system") String system,
                                                           @Param("gender") Integer gender);
}